// 配置存储变量
const optionMap = {};

/**
 * 公用配置对象管理服务
 */
export default class OptionManageService{

    /**
     * 设置一个配置对象 如果对象已存在 则自动合并
     * @param name 配置名称
     * @param newObj 配置对象
     * @return {*} 返回当前配置名称对应的配置对象
     */
    static setItem(name, newObj) {
        let oldObj = optionMap[name];
        if(oldObj){
            Object.assign(oldObj, newObj);
        }else{
            oldObj = optionMap[name] = newObj;
        }
        return oldObj;
    }

    /**
     * 获取一个配置对象
     * @param name 配置名称
     * @return {*}
     */
    static getItem(name) {
        return optionMap[name];
    }
}

